package com.dao;

import com.dto.in.ResumeInfo;
import com.entity.*;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

public interface SeekTeacherDao {

    List<ListTeacherInfo> seekTeacher1(@Param("teacherName")String teacherName,@Param("teacherSex")String teacherSex,@Param("cityId")Integer cityId,@Param("teacherValue") Integer teacherValue, @Param("orderCount")Integer orderCount, @Param("TeachingStageS") List TeachingStageS, @Param("SchoolIdS") List SchoolIdS, @Param("SubjectIdS") List SubjectIdS, @Param("TeachingAreaIdS") List TeachingAreaIdS, @Param("limit")Integer limit);

    List<ListTeacherInfo> seekTeacher2(@Param("teacherName")String teacherName,@Param("teacherSex")String teacherSex,@Param("cityId")Integer cityId,@Param("teacherValue") Integer teacherValue, @Param("orderCount")Integer orderCount, @Param("TeachingStageS") List TeachingStageS, @Param("SchoolIdS") List SchoolIdS, @Param("SubjectIdS") List SubjectIdS, @Param("TeachingAreaIdS") List TeachingAreaIdS, @Param("limit")Integer limit);

    Teacherinfo findTeacherDetail(@Param("userId")Integer userId);

    List<TeacherUrlInfo> findTeacherUrl1(@Param("id")Integer id);

    List<TeacherUrlInfo> findTeacherUrl2(@Param("id")Integer id);

    List<SubjectInfo> findUserSubject(@Param("userId")Integer userId);

    int findTeacherCount(@Param("userId")Integer userId);

    int insertTeacherResume(ResumeInfo resumeInfo);

    int deleteUserSubject(@Param("userId")Integer userId);

    int insertUserSubject(@Param("userId")Integer userId,@Param("subjectId")List subjectId);

    int updateResume(ResumeInfo resumeInfo);

    Teacherinfo findValueResume(@Param("userId")Integer userId);

    int findIsOne(@Param("userId")Integer userId);

    List<LoginInfo> findUserTeacher();

    int insertGrade(@Param("id")Integer id);

    int findGradeCount(@Param("userId")Integer userId);

    int updateGrade(@Param("userId")Integer userId, @Param("gradeType")Integer gradeType);

    int updateHourPrice(@Param("userId")Integer userId,@Param("a")BigDecimal a);

    int updateAge(@Param("userId")Integer userId,@Param("age")Integer age);

    List<LoginInfo> findPosition(@Param("page")Integer page,@Param("length")Integer length);

    int findPositionCount();

    List<ItemBankInfo> findItemBankList(@Param("limit")Integer limit);

    int deleteMyItemBank(@Param("itemBankId")Integer itemBankId);

    int deleteMyFeedBack(@Param("feedBackId")Integer feedBackId);

    ItemBankInfo findItemBankDetail(@Param("itemBankId")Integer itemBankId);

    List<ItemBankInfo> findAnswerList(@Param("itemBankId")Integer itemBankId);

    List<FeedBackInfo> findFeedBackList(@Param("limit")Integer limit,@Param("userId")Integer userId);

    List<FeedBackInfo> findTeacherFeedBackList(@Param("limit")Integer limit,@Param("userId")Integer userId);

    FeedBackInfo findFeedBackDetail(@Param("id")Integer Id);

    List<FeedBackInfo> findTeacherFeedBackDownStudentList(@Param("id")Integer id);

    String findMsg1(@Param("userId")Integer userId);

    String findMsg2(@Param("userId")Integer userId);

    int insertItemBank(@Param("userId")String userId,@Param("url")String url,@Param("content")String content);

    int insertAnswer(@Param("userId")String userId,@Param("itemBankId")String itemBankId,@Param("content")String content,@Param("url")String url);

    String findItemBankStatus(@Param("itemBankId")String itemBankId);

    int updateItemBankStatus(@Param("itemBankId")String itemBankId);

    int insertFeedBack(@Param("teaUserId")String teaUserId,@Param("stdUserId")String stdUserId,@Param("content")String content,@Param("url")String url);

    int insertStdFeedBack(@Param("userId")String userId,@Param("teacherFeedBackId")String teacherFeedBackId,@Param("content")String content,@Param("url")String url,@Param("a")int a);

    int insertTeacherUrl(@Param("teacherId")String teacherId,@Param("url")String url);

    int insertTeacherUrl2(@Param("teacherId")String teacherId,@Param("url")String url);

    List<StudentInfo> findTeacherUser(@Param("limit")Integer limit, @Param("userId")Integer userId);
}
